##############################################################################
#**#
#**#						Lap项目自动管理（-by 南宫子萍 @Respate）
#**#
#**# 此脚本用于自动添加子文件夹中的.C 文件，并指导子文件夹模块的编译
#**# 并生成lap_bin.o模块，由子Makefile调用
#**#
#**# 作 者：南宫子萍(@Respate)
#**# 时 间：2019-8-17
#**# QQ：	2085827949
##############################################################################


##############################################################################
#静默编译 					y：不输出打印信息		n：输出打印信息
##############################################################################
# ifeq ($(CONFIG_KBUILD_VERBOSE),n)
# Q ?=
# else
Q ?=@
# endif

# 清除编译后的 *.o文件
CLEAR_BIN ?= y	



#自动添加文件规则
ifeq ($(CONFIG_ATUO_ADFILE),y)
objs-y=$(patsubst %.c, %.o, $(shell ls *.c|grep c))

endif

CPPFLAGS=$(shell cat $(AUTODIR)/$(HEAD_FILE))
export CPPFLAGS
# $@ --代表目标文件
# $^ --代表所有的依赖文件
# $< --代表第一个依赖文件(最左边的那个)。



#指定编译规则
$(_LAP_BIN):	$(objs-y)
	$(Q)$(AR) rcs $@ $^	
ifeq ($(CLEAR_BIN),y)
	rm *.o -f
endif


%.o:	%.c
	$(Q)$(CC) $(DBUG) $(CPPFLAGS) $(CFLAGS) -o $@ $< -c

ifeq ($(CONFIG_ES_DBUG),y)
	$(Q)$(CC) $(CPPFLAGS) $(CFLAGS) -E -o $(ES_DIR)$@.i $<
endif
%.o:	%.S
	$(Q)$(CC) $(CPPFLAGS) $(CFLAGS) -o $@ $< -c